Automotive accidents are a major cause of loss of life and property. It is estimated that over ten million people are involved in traffic accidents annually worldwide and that of this number, about three million people are severely injured and about four hundred thousand are killed. A report “The Economic Cost of Motor Vehicle Crashes 1994” by Lawrence J. Blincoe published by the United States National Highway Traffic Safety Administration estimates that motor vehicle crashes in the U.S. in 1994 caused about 5.2 million nonfatal injuries, 40,000 fatal injuries and generated a total economic cost of about $150 billion.
Lack of driver attention and tailgating are estimated to be causes of about 90% of driver related accidents. A system that would alert a driver to a potential crash and provide the driver with sufficient time to act would substantially moderate automotive accident rates. For example a 1992 study by Daimler-Benz indicates that if passenger car drivers have a 0.5 second additional warning time of an impending rear end collision about sixty percent of such collisions can be prevented. An extra second of warning time would lead to a reduction of about ninety percent of rear-end collisions.
There are numerous approaches for measuring the distance from a moving vehicle to the obstacle. One approach such as lidar uses emission of electromagnetic waves and detection of the waves scattered or reflected from the obstacle. The measured distance is a function of the time elapsed between emission and detection. This approach provides a good range measuring device but does not determine the type and shape of the target obstacle. An example of this approach is described in Samukawa et al., U.S. Pat. No. 6,903,680. Another example is U.S. Pat. No. 6,810,330 given to Matsuura, which describes a detector set on a motor vehicle, which emits a beam of light and receives a beam reflected from an object and determines the distance to the object.
Another known approach for measuring distance from a moving automotive vehicle to an obstacle uses stereoscopic imaging. The distance to the obstacle is determined from the parallax between two corresponding images of the same scene. A system which measures distance based on parallax requires two cameras well aligned with each other. An example of such a stereoscopic system is Ogawa U.S. Pat. No. 5,159,557.
A third approach for measuring the distance from a moving vehicle to an obstacle uses a single camera. Shimomura in U.S. Pat. No. 6,873,912 determines the range using triangulation by assuming the vehicle width is known or by using stereo or radar. Another disclosure using triangulation is U.S. Pat. No. 6,765,480 given to Tseng. Yet another disclosure using triangulation is U.S. Pat. No. 5,515,448 given to Katsuo Nishitane et al. in which the range from an object, i.e. the bottom of a vehicle is determined using optical flow variation. U.S. Pat. No. 5,515,448 discloses use of a look up table to convert pixel location on the image Y-axis.
A distance measurement from a camera image frame is described in “Vision-based ACC with a Single Camera: Bounds on Range and Range Rate Accuracy” by Stein et al., presented at the IEEE Intelligent Vehicles Symposium (IV2003), the disclosure of which is incorporated herein by reference for all purposes as if entirely set forth herein. Reference is now made to FIG. 1 (prior art). FIG. 1 is a schematic view of a road scene which shows a vehicle 10 having a distance measuring apparatus 30, including a camera 32 and a processing unit 34. Camera 32 has an optical axis 33 which is preferably calibrated to be generally parallel to the surface of road 20 and hence, assuming surface of road 20 is level, optical axis 33 points to the horizon. The horizon is shown as a line perpendicular to the plane of FIG. 1 shown at point 38 parallel to road 20 and located at a height Hc of optical center 36 of camera 32 above road surface 20. During calibration, height Hc of camera 32 is measured. Reference is now also made to FIG. 2 (prior art) which illustrates view of a road scene which shows vehicle 10 having distance measuring apparatus 30, operative to provide a distance Z measurement to an obstacle, e.g. second vehicle 11 or lead vehicle 11 in front of vehicle 10, illustrating vehicle 10 measuring distance to a leading vehicle 11 and FIG. 2a which illustrates an image frame 40 on image plane 31. (Image 40 is shown as non-inverted although image 40 is generally inverted in focal plane 31 An initial horizon image location 60 is obtained by a calibration procedure. A point P on the road at a distance Z in front of camera 32 will project to a height yp below horizon 60 in image coordinates in focal plane 31 of camera 32 at a given time t. The distance Z to point P on the road may be calculated, given the camera optic center 36 height Hc, camera focal length f and assuming a planar road surface:
                              Z          ⁡                      (            t            )                          =                              -            f                    ⁢                                    H              c                                      y              p                                                          (        1        )            The distance is measured, for example, to point P (in FIG. 1), which corresponds to the “bottom edge” of vehicle 11 at location 25 where a vertical plane, tangent to the back of lead vehicle 11 meets road surface 20.
Positioning range error Ze of the “bottom edge” of lead vehicle 11 in the calculation of Z in equation (1) is illustrated by rays 35 and 35′. Rays 35 and 35′ project onto image plane 31 at respective image heights y and y′. Horizontal line 60 in image frame 40 is the projection of the horizon when road 20 is planar and horizontal. Horizontal line 60 is typically used as a reference for measuring images heights y and y′. Range error Ze is primarily caused by errors in locating the bottom edge 25 of lead vehicle 11, errors in locating the horizon 60 and deviations from the planar road assumption.
There is therefore a need for, and it would be highly advantageous to have, a method that can accurately measure the distance Z from a vehicle to an obstacle, e.g lead vehicle 11, a method which significantly reduces in real time the above-mentioned errors in distance measurement Z. This measurement can be used for warning a driver in time to prevent a collision with the obstacle as well as for other applications.
The Kalman filter is an efficient recursive filter which estimates the state of a dynamic system from a series of incomplete and noisy measurements. An example of an application would be to provide accurate continuously-updated information about the position and velocity of an object given only a sequence of observations about its position, each of which includes some error. The Kalman filter is a recursive estimator, meaning that only the estimated state from the previous time step and the current measurement are needed to compute the estimate for the current state. In contrast to batch estimation techniques, no history of observations and/or estimates is required. The Kalman filter is unusual in being purely a time domain filter; most filters (for example, a low-pass filter) are formulated in the frequency domain and then transformed back to the time domain for implementation. The Kalman filter has two distinct phases: Predict and Update. The predict phase uses the estimate from the previous timestep to produce an estimate of the current state. In the update phase, measurement information from the current timestep is used to refine this prediction to arrive at a new, more accurate estimate.